package com.tensquare.friend.dao;

import com.tensquare.friend.pojo.Friend;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;

/**
 * @author Macross
 * @Type FriendDao.java
 * @Desc 朋友信息dao接口
 * @date 2019/12/25 20:51
 */
public interface FriendDao extends JpaRepository<Friend,String> {


    /**
     * 主要用于判断指定用户是否以及和另一个指定的用户是朋友关系
     * @param userId 用户ID
     * @param friendId 朋友ID
     * @return >0:表示已经是朋友关系,否则表示还不是朋友
     */
    int countByUserIdAndFriendId(String userId,String friendId);

    /**
     * 删除好友信息记录
     * @param userId 用户ID
     * @param friendId 朋友ID
     */
    int deleteByUserIdAndAndFriendId(String userId,String friendId);

    /**
     * 更新是否相互喜欢字段
     * @param userId 用户ID
     * @param friendId 朋友ID
     * @param isLike 是否相互喜欢
     * @return
     */
    @Modifying
    @Query(
            nativeQuery = true,
            value = "update tb_friend set islike = ?3 where userid = ?1 and friendid = ?2"
    )
    void updateIsLike(String userId,String friendId,String isLike);

}
